오빠두엑셀 `2026 무료 챌린지` 오픈! 완주하고 수료증 받아가세요! 5년 연속 IT분야 베스트셀러! 「 진짜쓰는 실무엑셀 」로 2026년 공부 끝내기 엑셀이 막히셨나요? Q&A 게시판에서 바로 해결하세요.
메뉴
찾기 및 참조
LOOKUP 함수
엑셀 2003
찾기 및 참조
LOOKUP 함수
엑셀-LOOKUP-함수-사용법
함수 요약

엑셀 LOOKUP 함수는 범위에서 값을 찾은 후, 다른 범위의 같은 위치에 있는 값을 반환하는 함수입니다.

함수 구문
=LOOKUP(찾을값, 검색범위, [출력범위])
찾을값
-
검색 범위에서 찾을 값입니다.
검색범위
-
[선택인수]찾을값을 검색할 범위입니다.
  • 검색 범위는 반드시 오름차순으로 정렬해야 합니다. 정렬되지 않은 경우, 잘못된 결과가 반환될 수 있습니다.
출력범위
-
[선택인수]값을 출력할 범위입니다.
  • 출력 범위를 지정하지 않을 경우, 배열형으로 동작합니다.
  • 배열형은 범위의 첫번째행(또는 첫번째열)에서 값을 찾아, 마지막행(또는 마지막열)의 값을 반환하도록 동작합니다.
상세 설명

LOOKUP 함수는 범위에서 특정 값을 검색한 후, 다른 범위에서 동일한 위치에 있는 값을 반환하는 함수입니다. 일반적으로 VLOOKUP 함수INDEX와 MATCH 공식보다 덜 사용되지만, 범위에 배열을 사용할 수 있어 XLOOKUP 함수가 제공되지 않는 2019 이전 버전에서 유연하게 활용할 수 있습니다.

=LOOKUP(찾을값,찾을범위,출력범위)
/ / 범위에서 값을 찾아 출력범위에서 동일한 위치의 값을 반환합니다.
/ / 찾을범위는 반드시 오름차순으로 정렬되어야 합니다.
=LOOKUP(2,1/(찾을범위=찾을값),출력범위)
/ / 범위의 마지막 위치부터 값을 검색한 후, 동일한 위치의 값을 반환합니다.
/ / 정렬에 상관없이 동작합니다.

다만, 검색 범위는 반드시 오름차순으로 정렬 되어야만 정확한 결과를 반환하는 점을 주의해서 사용해야 합니다.


LOOKUP 함수 간단 예제
1) 직원 번호로 이름 찾기
=LOOKUP("A1004", A2:A10, B2:B10)
/ / A2:A10에 직원번호, B2:B10에 이름이 작성된 경우 "A1004" 사번의 직원 이름을 반환합니다.
/ / A2:A10은 반드시 오름차순으로 정렬되어야 합니다.
2) 상품 가격 검색
=LOOKUP("사과", D2:D20, E2:E20)
/ / D2:D20 범위에서 사과를 찾아, E2:E20에 정리된 상품 가격을 반환합니다.
/ / D2:D20 범위는 오름차순으로 정렬되어야 합니다.

LOOKUP 함수 상세 가이드
1) 벡터형과 배열형 LOOKUP 함수 차이점
  • 벡터형 LOOKUP 함수

    =LOOKUP(찾을값,검색범위,출력범위)

    : 벡터형 LOOKUP 함수는 검색 범위와 출력할 범위를 각각 지정하는 방식입니다.
    검색 범위에서 값을 찾은 후, 출력 범위에서 같은 위치의 값을 반환합니다. 이 경우, 검색 범위는 반드시 오름차순으로 정렬되어야 하며 정확히 일치하는 값이 없을 경우 찾을 값보다 가장 가까운 작은 값을 검색합니다.

  • 배열형 LOOKUP 함수
    =LOOKUP(찾을값,넓은범위)

    : 배열형 LOOKUP 함수는 넓은 범위에서 값을 검색할 때 사용됩니다. 찾을값을 범위의 첫 번째 행 또는 열에 검색한 후, 해당 값과 일치하는 위치의 마지막 행 또는 열에서 값을 반환합니다. 이 방식은 유연성이 적어 자주 사용되지 않습니다.


그 외 주의사항

검색 범위는 반드시 오름차순으로 정렬되어야 합니다. 정렬되지 않은 상태에서 함수를 사용할 경우, 잘못된 결과를 반환할 수 있습니다.

검색범위와 출력범위의 크기는 동일해야 합니다.

만약 검색 범위에서 정확히 일치하는 값이 없을 경우, 가장 가까운 작은 값을 검색합니다.


댓글 8
5 (6개 평가)
장동현
장동현 2020.05.14 08:50
자꾸 엉뚱한 값이 출력되거나 오류가 떠서 왜 이런가 싶었는데-
오름차순으로 정렬하는게 중요한 포인트였군요-!!
자세하고 쉬운 설명 감사합니다~!
엑린이
엑린이 2020.05.24 14:15
감사합니다
장미나
장미나 2020.12.10 11:09
혹시 다른 시트에서 입력을해도 불러올수 있는 방법이 있을까요??
오빠두엑셀
오빠두엑셀 작성자 2020.12.12 06:06
안녕하세요?
네 다른시트에도 사용 가능합니다.^^
컴쟁이
컴쟁이 2021.10.19 21:51
좋은 자료 감사합니다.
무소의뿔
무소의뿔 2023.03.10 22:19
Lookup() 동작에 대해 질문할게 있습니다.
=LOOKUP(2, {1,#DIV/0!,1}, {11,22,33}) 에서, 결과가 33이 나옵니다.
2라는 값을 {1,#DIV/0!,1}에서, 찾아보면 없쟎아요. 그런데, {11,22,33}의 3번째 값인 33을 반환했습니다. 왜 이렇게 되는건가요?
오빠두엑셀
오빠두엑셀 작성자 2023.03.14 15:45
LOOKUP 함수는 오름차순 된 범위를 아래에서 위로 올라오며 이진검색을 하고, 일치하는 값이 없을 경우 찾으려는_값보다 작거나 같은 값 중 최대값을 반환합니다.
함수설명을 보시면 정리되어 있습니다.^^
따라서 작거나 같은 값인 1이 가장 첫번째로 일치하는 경우, 마지막 값을 반환하게 됩니다.
강민준🤗
강민준🤗 2024.08.11 07:31
좋은 강의 감사합니다🙇‍♂️